1. Field of the Invention
The present application relates generally to managing software use, and more specifically to systems and methods to enable the monitoring and adjusting software usage under a software license.
2. Description of the Related Art
Public key infrastructure (PKI) encryption is used to secure data exchanges in digital form. It comprises a unique mathematical property that allows part of the PKI encryption subsystem to be public and part of the subsystem to remain secret, but in the process negates the need for a secret to be shared between two parties wishing to share protected data. This has been a major breakthrough in secure data exchange.
FIG. 1 represents a simple public key infrastructure encryption system as commonly used in the art. It is included for informational purposes. This encryption system comprises two sets of two keys, one each for the sender and recipient of the encrypted data. The key pairs on each side of the data exchange consist of a private key 12, 15 that is kept secret by the user and a public key 13, 14 which is shared with the other party in the exchange of data. There is a unique relationship between the private key 14 and the public key 15 of the sender 11 and the private key 12 and the public key 13 of the receiver 10 that allows the sender 11 of data to use their private key 15 and the recipient's public key 13 to produce an encryption code 17 that is used to encrypt the data. Conversely, the simple public key infrastructure encryption system allows the requester 10 to use the sender's public key 14 and their own private key 12 to produce a decryption code 16 that can in turn be used to decrypt the data after receipt.
However, a major problem or shortcoming with such existing systems is that the secret part of the PKI subsystem, also called the private key, can be copied, stolen or faked. Accordingly, there is a need for an improved technique for securing communication via PKI encryption that prevents the copying or stealing of private keys, the use of fake private keys, etc.